package com.taobao.api.request;

import com.taobao.api.internal.mapping.ApiField;
import com.taobao.api.TaobaoObject;
import java.util.Map;

import com.taobao.api.ApiRuleException;
import com.taobao.api.BaseTaobaoRequest;
import com.taobao.api.internal.util.TaobaoHashMap;
import com.taobao.api.internal.util.json.JSONWriter;
import com.taobao.api.response.RdsDbCreateaccountResponse;

/**
 * TOP API: taobao.rds.db.createaccount request
 * 
 * @author top auto create
 * @since 1.0, 2019.02.15
 */
public class RdsDbCreateaccountRequest extends BaseTaobaoRequest<RdsDbCreateaccountResponse> {
	
	

	/** 
	* 入参对象
	 */
	private String param0;

	public void setParam0(String param0) {
		this.param0 = param0;
	}

	public void setParam0(RequestDbAccountModel param0) {
		this.param0 = new JSONWriter(false,true).write(param0);
	}

	public String getParam0() {
		return this.param0;
	}

	public String getApiMethodName() {
		return "taobao.rds.db.createaccount";
	}

	public Map<String, String> getTextParams() {		
		TaobaoHashMap txtParams = new TaobaoHashMap();
		txtParams.put("param0", this.param0);
		if(this.udfParams != null) {
			txtParams.putAll(this.udfParams);
		}
		return txtParams;
	}

	public Class<RdsDbCreateaccountResponse> getResponseClass() {
		return RdsDbCreateaccountResponse.class;
	}

	public void check() throws ApiRuleException {
	}
	
	/**
 * 入参对象
 *
 * @author top auto create
 * @since 1.0, null
 */
public static class RequestDbAccountModel extends TaobaoObject {

	private static final long serialVersionUID = 3877762666124389243L;

	/**
		 * 账户描述
		 */
		@ApiField("account_desc")
		private String accountDesc;
		/**
		 * 账户名称
		 */
		@ApiField("account_name")
		private String accountName;
		/**
		 * 新建db名称
		 */
		@ApiField("db_name")
		private String dbName;
		/**
		 * rds实例名称
		 */
		@ApiField("instance_name")
		private String instanceName;
		/**
		 * 账户密码
		 */
		@ApiField("password")
		private String password;
	

	public String getAccountDesc() {
			return this.accountDesc;
		}
		public void setAccountDesc(String accountDesc) {
			this.accountDesc = accountDesc;
		}
		public String getAccountName() {
			return this.accountName;
		}
		public void setAccountName(String accountName) {
			this.accountName = accountName;
		}
		public String getDbName() {
			return this.dbName;
		}
		public void setDbName(String dbName) {
			this.dbName = dbName;
		}
		public String getInstanceName() {
			return this.instanceName;
		}
		public void setInstanceName(String instanceName) {
			this.instanceName = instanceName;
		}
		public String getPassword() {
			return this.password;
		}
		public void setPassword(String password) {
			this.password = password;
		}

}


}